1. Field of the Invention
The present invention relates to storage controllers for a server of a computing system, and more specifically, to coordination of multiple controllers.
2. Description of the Related Art
In storage systems of various computing infrastructures, such as server systems, dual storage controllers are often implemented. Generally, only one controller is active at a time. In such cases, one controller is implemented as a master, the other as a slave. Often, only the master controller is active, while the slave controller constantly monitors the master controller. If the master controller fails, the slave controller takes over the operation. In operation, the master controller “owns” all devices attached to the device access bus of the storage system. This means that only the master controller is able to control all devices of this domain.
In some environments, multiple servers are used to provide services. Often, this is due to limitations in bandwidth. For example, consider that in the architecture provided above, a single controller owns all devices attached to the device bus. Therefore, no routing service can be used. The controlled devices can be accessed by either one or by the other controller, and cannot be accessed by both controllers at the same time. In present day embedded control environments, there are no techniques for using more than one active controller.
Thus, what are needed are methods and apparatus to provide for use of more than one controller. Preferably, the methods and apparatus provide for maximum bandwidth within the control domain, while only requiring minor economic investment.